package zone.haiwen.demo.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import zone.haiwen.demo.dto.Passenger;
import zone.haiwen.demo.dto.Travel;

/**
 * Description
 * @author zhangHaiWen
 * @date 2021/7/8 20:23
 * @return
 **/
@SuppressWarnings("ALL")
public interface TravelService extends IService<Travel> {
    /**
     * Description
     * @author zhangHaiWen
     * @date 2021/7/8 20:23
     * @return void
     **/
    void createTable();
    /**
     * Description
     * @author zhangHaiWen
     * @date 2021/7/8 20:24
     * @return void
     **/
    void insert(Long id, String destination, String passengerName, Long passengerId, String gmtCreate, String gmtModified);

    /**
     * Description
     * @author zhangHaiWen
     * @date 2021/7/8 20:24
     * @return com.baomidou.mybatisplus.core.metadata.IPage<zone.haiwen.demo.dto.Travel>
     **/
    IPage<Travel> getTravelByDestination(String destination, Integer current, Integer limit);

    /**
     * Description
     * @author zhangHaiWen
     * @date 2021/7/8 20:41
     * @return com.baomidou.mybatisplus.core.metadata.IPage<zone.haiwen.demo.dto.Travel>
     **/
    IPage<Passenger> leftJoin(Integer current, Integer limit);


}
